#ifndef NAMEDPIPE_TESTS_HPP_
# define NAMEDPIPE_TESTS_HPP_

# include "UnitTest/Tests.hpp"

namespace wrappers {
namespace unix_utils {

class NamedPipe_tests {
public:
  NamedPipe_tests();
  virtual ~NamedPipe_tests();

  static UTESTS_FUNCTION_PROTOTYPE(NonTemplatedFunctions);
  static UTESTS_FUNCTION_PROTOTYPE(TemplatedFunctions);
  static UTESTS_FUNCTION_PROTOTYPE(AllFunctionsWithThread);
  static void *ThreadTimedLocker(void *args);

private:
  struct NamedPipe_testsData {
    int magic1;
    int magic2;
  };

  unit_test::TestRunner mTestRunner;
};

} /* namespace unix_utils */
} /* namespace wrappers */
#endif /* !NAMEDPIPE_TESTS_HPP_ */
